//最大频率元素计数
/*给你一个由 正整数 组成的数组 nums 。

返回数组 nums 中所有具有 最大 频率的元素的 总频率 。

元素的 频率 是指该元素在数组中出现的次数。
1 <= nums.length <= 100
1 <= nums[i] <= 100
*/
class Solution {
public:
    int maxFrequencyElements(vector<int>& nums) {
        int hash[101] = {0};
        int max = 0;
        int sum = 0;
        for (auto i : nums) {
            hash[i]++;
            if (hash[i] > max)
                max = hash[i];
        }
        for (auto i : hash) {
            if (max == i)
                sum += i;
        }
        return sum;
    }
};



//最长的严格递增或递减子数组
/*给你一个整数数组 nums 。

返回数组 nums 中 
严格递增
 或 
严格递减
 的最长非空子数组的长度。
 1 <= nums.length <= 50
1 <= nums[i] <= 50
*/
class Solution {
public:
    int longestMonotonicSubarray(vector<int>& nums) {
        int up_max = 1;
        int up_count = 1;
        int down_max = 1;
        int down_count = 1;
        for (int i = 1; i < nums.size(); i++) {
            if (nums[i] <= nums[i - 1])
                up_count = 1;
            else
                up_count++;
            if (up_max < up_count)
                up_max = up_count;
        }
        for (int i = 1; i < nums.size(); i++) {
            if (nums[i] >= nums[i - 1])
                down_count = 1;
            else
                down_count++;
            if (down_max < down_count)
                down_max = down_count;
        }
        return up_max > down_max ? up_max : down_max;
    }
};